#ifndef FND_GAME_ADAPTER_CAR_H
#define FND_GAME_ADAPTER_CAR_H
#include <vector>
#include <string>
#include "adapter_object.h"
#include <d3d9.h>
#include <d3dx9effect.h>
#include "ltclientshell.h"


class car_seter;
class shader_manager ;
class racing_game_logic ;
class adapter_car : public adapter_object {
public:
    adapter_car(
        HOBJECT object,
        racing_game_logic* logic,
        const std::vector<int>& ids,
        const std::string& cubename) ;
    
private:
    void init_messages() ;
    void do_update(float time_inteval) ;
    void choose_light_to_use() ;
    
public:
    void handle_update_car_message(ILTMessage_Read* pMsg) ;
private:
    racing_game_logic* m_racing_logic ;
    std::vector<int> m_shader_ids ;
    std::vector<car_seter*> m_seters ;
    //IDirect3DCubeTexture9* m_cube ;
	bool change_color;
	} ;
#endif
